Interest in the use of network-based storage systems has increased considerably in recent years. Storage servers connected to a network provide commonly available mass storage that can be shared or allocated exclusively to each of a number of computers or other information-handling systems connected to a common network.
The Small Computer Systems Interface (SCSI) is a widely used standard for accessing various storage devices such as hard discs, CD-ROM's, DVD's, ZIP discs, tapes, Superdisks, and the like. Newer versions and interface definitions have been developed, including wide, fast, wide and fast, 40 MB/s, 80 MB/s, 160 MB/s and fiber channel (both copper-wire and optical versions), and the like. These interfaces, however, are all storage-based architectures.
The Internet and many other communications networks use TCP/IP (including the software interface layers for telecommunications protocol and Internet Protocol) to transfer data. It generally takes a dedicated computer interface to receive and decode (or code and transmit) TCP/IP packets, and to pass data carried by such packets to applications residing at higher layers in the communications stack.
The Internet SCSI (iSCSI) protocol has been under consideration recently as a way of extending SCSI-based services across an IP network. Neither the iSCSI protocol nor the SCSI protocol itself define how to handle certain errors due to, for instance, the network connection between a computer and an iSCSI-based storage device going down. Currently, some systems will retry the iSCSI command repeatedly, and eventually take the peripheral device offline if the retries fail.
Therefore, there is a need for an error-handling system and method that address error handling due to network problems in an iSCSI-based system.